package com.mjfeed.dao;

import java.util.List;

import com.mjfeed.entity.ProductCategory;

/**
 * @description 商品分类
 * @author zhaominglei
 * @date 2015年1月7日
 */
public interface ProductCategoryDao extends BaseDao<ProductCategory> {
	/**
	 * 查找顶级商品分类
	 * 
	 * @param count
	 *            数量
	 * @return 顶级商品分类
	 */
	public List<ProductCategory> findRoots(Integer count);

	/**
	 * 查找上级商品分类
	 * 
	 * @param productCategory
	 *            商品分类
	 * @param count
	 *            数量
	 * @return 上级商品分类
	 */
	public List<ProductCategory> findParents(ProductCategory productCategory, Integer count);

	/**
	 * 查找下级商品分类
	 * 
	 * @param productCategory
	 *            商品分类
	 * @param count
	 *            数量
	 * @return 下级商品分类
	 */
	public List<ProductCategory> findChildren(ProductCategory productCategory, Integer count);
	
	/**
	 * 排序商品分类
	 * 
	 * @param productCategories
	 *            商品分类
	 * @param parent
	 *            上级商品分类
	 * @return 商品分类
	 */
	public List<ProductCategory> sort(List<ProductCategory> productCategories, ProductCategory parent);
}
